Apparatus and method for estimating attitude using inertial measurement equipment

ABSTRACT

An apparatus for estimating attitude using an inertia measuring apparatus comprising: a Kalman filter  3  adapted to receive a quantity of state ω(t) from the inertia measuring apparatus  1 , input the quantity of state into a predetermined system equation and a predetermined observation equation and execute time update processing and observation update processing with regard to the system equation and the observation equation; a processing section  4  adapted to generate an estimated value of a time differentiation of a modified Rodrigues parameter α(t) based upon an output of the Kalman filter; an integral processing section  5  adapted to generate an estimated value of the modified Rodrigues parameter based upon an output of the processing section; a system propagation matrix generating section  6  adapted to update an observation sensitivity matrix based upon an initial value being given beforehand and an output of the integral processing section and supply the updated output to the Kalman filter; a transformed matrix generating section  7  adapted to generate a coordinate transformation matrix R based upon an output of the integral processing section; and an attitude estimation section  8  adapted to carry out an attitude estimation based upon an output of the transformed matrix generating section, is disclosed.

FIELD OF THE INVENTION

[0001] The present invention relates to an apparatus for estimating attitude, which, for example, estimates the attitude of an artificial satellite based upon signals from an inertia measuring apparatus, and to a method for estimating the attitude and a program for the same.

BACKGROUND ART

[0002] In recent years, in the field of space development, attentions have been paid to a microsat (micro-miniaturized artificial satellite), which is monofunctional but can be developed easily, in addition to big and multi-functional artificial satellites. It is considered that easiness in the development of such microsat can reduce the cost per unit of an artificial satellite and also renders the space development more familiar. At present, a great number of microsats have been launched as piggyback satellites.

[0003] The merits of the microsat are the features of monofunctional and low cost. However, in order to provide the microsat with high performance, it is essential for the satellite to be equipped with three axial control mechanism. Because of that, an attitude observation system with high performance is required. However, considering the increase in the developmental cost for the satellite, it is not possible to use such a expensive hardware.

[0004] Conventionally, various types of sensors have been used as an attitude sensor for the three axial satellites. For example, it has been known that exact attitude estimation including rolls and yaws can be done by detecting an attitude angular velocity from a gyro, such as an inertia reference apparatus, and then integrating the attitude angular velocity. The inertia reference apparatus is an apparatus which is mounted with a rate gyro or the like in the three axial manner and packaged together. When directly integrating signals of the gyro and then using them, there is a merit for obtaining dynamical and good responsive detection. Then again, there is a demerit of accumulation of drifts during a long run. In order to compensate such accumulation of drifts, a manner of rendering feedback of the errors using a star tracker from the absolute reference to the detection system has been employed. However, because this manner requires expensive sensors, it is not possible to apply it to a microsat that is monofunctional and is required to be low cost.

[0005] The present invention was made for aiming at achieving the above-mentioned object, and it is an object of the present invention to provide an attitude estimation apparatus being provided with high accuracy and inexpensive and a method for estimating attitude, i.e., an attitude estimation apparatus using an inertia measuring apparatus and being capable of estimating the attitude of an artificial satellite by means of hardware, such as a piezoelectric vibration gyro and a fiber gyro, of which cost per unit is relatively low, and a method and a program for estimating the attitude.

[0006] With the present invention, it becomes possible to estimate the attitude only with information from the gyro without requiring sensors such as a star tracker. The conventional artificial satellites may face such a circumstance where they cannot use the sensors. For example, the present invention can be a countermeasure under a practical operation when an artificial satellite cannot use a sensor such as a star tracker in the maneuver.

[0007] Disclosure of the Invention

[0008] The attitude estimation apparatus using an inertia measuring apparatus according to the present invention comprises:

[0009] a Kalman filter adapted to receive a quantity of state ω(t) from the inertia measuring apparatus to input it into a predetermined system equation and observation equation and execute time update processing and observation update processing with regard to the equations,

[0010] a processing section adapted to generate an estimated value of a time differentiation of a modified Rodrigues parameter α(t) based upon an output of the Kalman filter,

[0011] an integral processing section adapted to generate an estimated value of a modified Rodrigues parameter based upon an output of the processing section,

[0012] a system propagation matrix generating section adapted to update an observation sensitivity matrix based upon an initial value given beforehand and an output of the integral processing section, and supply the updated output to the Kalman filter,

[0013] a transformed matrix generating section adapted to generate a coordinate transformation matrix R based upon an output of the integral processing section, and

[0014] an attitude estimation section adapted to execute attitude estimation based upon an output of the transformed matrix generating section.

[0015] The modified Rodrigues parameter is preferably given according to equations (2.2.31) and (2.2.32) described later wherein e is a directional cosine of a rotative axis and θ is a rotation angle about the rotative axis.

[0016] When an equation (2.3.1) described later is provided, the observation equation is preferably given by adding observation noises into an equation (2.3.2).

[0017] When the right member of an equation (2.3.5) described later is set to be f(α(t), {dot over (α)}(t),t), the system equation is preferably given by adding system noises into an equation (2.3.6) described later.

[0018] The method for estimating attitude according to the present invention, wherein an inertia measuring apparatus is used, comprises:

[0019] first step for receiving signals from the inertia measuring apparatus and generating a system equation and an observation equation, wherein a quantity of state of a time differentiation of a modified Rodrigues parameter α(t) and a quantity of state ω(t) are quantities to be observed,

[0020] second step for obtaining an estimated value of a time differentiation of the parameter α(t) by means of an extended Kalman filter,

[0021] third step for numerically integrating the estimated value obtained in the second step and obtaining an estimated value of the parameter α(t),

[0022] fourth step for determining a transformed matrix R(t) based upon the estimated value obtained in the third step, and

[0023] a step for obtaining an estimated value of the attitude based upon the transformed matrix R(t).

[0024] The program according to the present invention is to render a computer to execute:

[0025] first step for receiving signals from the inertia measuring apparatus and generating a system equation and an observation equation, in those which a quantity of state of a time differentiation of a modified Rodrigues parameter α(t) and a quantity of state ω(t) are quantities to be observed,

[0026] second step for obtaining an estimated value of a time differentiation of the parameter α(t) by means of an extended Kalman filter,

[0027] third step for numerically integrating the estimated value obtained in the second step to obtain an estimated value of the parameter α(t),

[0028] fourth step for determining the transformed matrix R(t) based upon the estimated value obtained in the third step, and

[0029] a step for obtaining an estimated value of the attitude based upon the transformed matrix R(t).

[0030] The program according to the present invention is recorded in, for example, a recording medium.

[0031] The recoding medium includes, for example, a flexible disk, a hard disk, a magnetic tape, a magnet-optical disk, a CD (including CD-ROM, Video-CD), a DVD (including DVD-Video, DVD-ROM, DVD-RAM), a ROM-cartridge, a RAM memory cartridge equipped with battery backup, a flash memory cartridge, a nonvolatile RAM cartridge, and the like.

[0032] Furthermore, the recording medium also includes communication media, such as a cable communication medium, e.g., telephone lines, and a wireless communication medium, e.g., microwave lines. Internet is also included in the communication media defined herein.

[0033] The medium is defined as an object in which information (mainly digital data and programs) are recorded by means of certain physical means and capable of rendering a processing device, such as a computer and a dedicated processor, to execute a preset function. In short, any material can be the medium as far as it can execute downloading of a program into a computer by any means and it can render the computer to implement the program.

[0034] The present invention is constituted by applying the modified Rodrigues parameter to the extended Kalman filter.

[0035] In general, a conversion equation using quaternions is known as a propagation equation of an attitude. In case of the quaternions, there are such advantages that no specific point with respect to the attitude exists and no transcendental function is used, which are unlike the Euler angles. Thus, the quaternions are generally used for describing the attitude of a satellite. However, when the quaternions are estimated with respect to information only from a gyro, a required observation equation is not established in the Kalman filter that is an estimation algorithm. In order to carry out the estimation by means of the Kalman filter, it is required to establish required equations, i.e., a system equation and an observation equation. Hence, in the present invention, it has become possible to establish those equations by using the modified Rodrigues parameter that is an application of the quaternions.

BRIEF EXPLANATION OF THE DRAWINGS

[0036]FIG. 1 is a block diagram showing the apparatus according to one embodiment for carrying out the present invention.

[0037]FIG. 2 is a flow chart showing the processing according to one embodiment for carrying out the present invention.

[0038]FIG. 3 shows an example of a result of simulation.

BEST MODE FOR CARRYING OUT THE INVENTION

[0039] Now, the apparatus and the method according to embodiments for carrying out the present invention are explained with reference to the appended drawings. The explanation in the following is an example where the apparatus and the method according to embodiments for the present invention are used for estimating an attitude. The apparatus and the method according to embodiments for the present invention are intended to carry out estimation of the attitude information of an artificial satellite for long run with high accuracy based upon only an output from a gyro serving as a sensor. In the present invention, modified Rodrigues parameters are used as the attitude determination equation of an artificial satellite.

[0040]FIG. 1 is a block diagram showing the apparatus according to one embodiment for the present invention. The apparatus receives a quantity of state (angular velocity) ω(t) from a rate gyro serving as an inertia measuring apparatus, and Kalman filter 3 generates a system equation and an observation equation and executes time update processing and observation update processing according to the following equations. Besides, the details of the system equation and the observation equation will be explained later.

[0041] Time Update

{umlaut over ({overscore (α)})}=f({dot over (α)}(t),t){dot over (α)}(t _(k−1))={dot over ({circumflex over (α)})}(t _(k−1))

{overscore (P)}(t)=F(t){overscore (P)}(t)+{overscore (P)}(t)F(t)^(T) +B(t)Q(t)B(t)

[0042] Observation Update

{dot over ({circumflex over (α)})}(t _(k))={dot over (α)}(t _(k))+K[ω(t _(k))−h({dot over (α)}(t _(k)))]

K(t _(k))={overscore (P)}(t _(k))H(t _(k))^(T) [H(t _(k)){overscore (P)}(t _(k))H(t _(k))^(T) +R(t _(k))]⁻¹

P(t _(k))₊ =[I−K(t _(k))H(t _(k))]{overscore (P)}(t _(k))

[0043] In the above equations, a mark + shown with a subscript letter represents a variable after the observation update processing carried out by the Kalman filter. Similarly, k shown with a subscript letter represents that implementation of an expression which is discretely processed at an interval Δt is the k-th in the order, and k+1 represents that the implementation is the k+1-th in the order. A negative numeral of −1 shown with a superscript letter represents an inverse matrix. T shown with a superscript letter represents a transposed matrix.

[0044] Now, brief explanation will be made about the time update and the observation update. The time update is defined as a processing to integrate a linear model expressed in the following equation.

{dot over (x)}(t)=F(t)x(t)+B(t)u(t)

[0045] In the above-described case, the time update is a processing to integrate the following equation.

{umlaut over (α)}=F(t){dot over (α)}+B(t)u(t)

[0046] This is a processing to obtain a predicted value by conducting calculation. In addition, a covariance matrix of errors is simultaneously updated. The equation with regard to the covariance matrix of errors is expressed as the following equation.

{overscore (P)}(t)=F(t){overscore (P)}(t)+{overscore (P)}(t)F(t)^(T) +B(t)Q(t)B(t)^(T)

[0047] When conducting the update processing, this equation is subjected to integral processing. As a result, {overscore (P)}(t) is worked out.

[0048] The observation update is defined as a processing to work out a new estimated value based on an observed value and a predicted value by conducting calculation, those which are newly obtained. In the above-described case, the equation is expressed as follows.

{dot over ({circumflex over (α)})}(t_(k))₊={dot over (α)}(t _(k))+K(t _(k))[ω(t _(k))−H(t _(k)){dot over (α)}(t _(k))]

[0049] The component attached with a hat represents an estimated value, and the component with a bar represents a predicted value. In this processing, information with regard to errors is obtained by comparing an observed value and a predicted value, the information is then multiplied by a certain gain to add the multiplied information to the predicted value, and the predicted value having been added is used as the estimated value. Particularly, the part of

ω(t _(k))−H(t _(k)){dot over (α)}(t _(k))

[0050] is called as innovation process or O−C, which is a process to compare the observed value with the observed value predicted by conducting calculation. With the process, a comparison is made to see if the predicted value by conducting calculation and the observed value differ with each other or not. Information as regard to errors is obtained from the comparison, however, the information includes both useful information and meaningless information. So-called Kalman gain expressed with

K(t _(k))

[0051] is for determining how to divide such information and add the divided information to the predicted value.

[0052] The Kalman gain is worked out according to the following equation.

K(t _(k))={overscore (P)}(t _(k))H(t _(k))^(T) [H(t _(k)){overscore (P)}(t _(k))H(t _(k))^(T) +R(t _(k))]⁻¹

[0053] (For conducting calculation according to the above equation, it was required to determine {overscore (P)}(t) by means of the time update.) Besides, R(t_(k)) is one called as a covariance matrix of the observation noises.

[0054] Further, the covariance matrix of errors is also updated with the Kalman gain, the update is carried out according to the following equation.

P(t _(k))₊ =[I−K(t _(k))H(t _(k))]{overscore (P)}(t _(k))

[0055] The “time update” and “observation update” those which execute the processings as described above are used to estimate the quantity of state, such as “position” and “attitude”, by the time update during the time after executing the observation update with a new observed value until obtaining a new observed value.

[0056] A processing section 4 generates a (an estimated value of a time differentiation {dot over ({circumflex over (α)})}(t) of a modified Rodrigues parameter {dot over (α)}(t)) based upon an output of the Kalman filter 3.

[0057] An integral processing section 5 generates estimated values {circumflex over (α)}, {circumflex over (α)} of the modified Rodrigues parameter based upon an output of the processing section 4.

[0058] A system propagation matrix generating section 6 updates an observation sensitivity matrix based upon an output of an initial value setting section 2 and an output of the integral processing section 5 and supplies the updated output to the Kalman filter 3. The system propagation matrix is F(t) in a linear system expressed as an equation as follows.

{dot over (x)}(t)=F(t)x(t)+B(t)u(t)  (In this case: {umlaut over (α)}=F(t){dot over (α)}+B(t)u(t))

[0059] In this case, the system propagation matrix is obtained by subjecting the quantity of state α of an equation (2.3.5) described later to a partial differentiation (equations (2.3.8) to (2.3.16) described later correspond to the components). The system propagation matrix is a matrix representing a relation between the quantity of state and a differentiated value of the quantity of state. The observation sensitivity matrix is H(t) expressed in the following equation.

ω(t)=H(t){dot over (α)}(t)+v(t)

[0060] The observation sensitivity matrix is a matrix representing a relation between an observed value and the quantity of state (The matrix is obtained from an equation (2.3.1) described later. However, since this value cannot be solved holomorphically, it is subjected to a numerical operation processing).

[0061] The transformed matrix generating section 7 generates a coordinate transformation matrix R based on an output of the integral processing section 5.

[0062] The attitude estimation section 8 executes attitude estimation based upon an output of the transformed matrix generating section 7.

[0063] Now, the operation will be explained. The outline of the processings in the present invention will be explained first, the theoretics and the details of algorithm of the present invention will be then explained, and the result of simulation will be finally explained.

[0064] In an embodiment for carrying out the present invention, a known extended Kalman filter is used. The Kalman filter is a manner where an initial value of a desired quantity of state is previously given and estimated values of the quantity of state are sequentially calculated based upon the initial value and the time record of the quantity of observation.

[0065]FIG. 2 shows an outlined flow chart of the operation.

[0066] S1: Preparing a system equation and an observation equation by receiving signals from a rate gyro 1, in those which a quantity of state of a time differentiation α(t) of a modified Rodrigues parameter α(t) and ω(t) are the quantities to be observed.

[0067] S2: Working out an estimated value of α(t) with the extended Kalman filter.

[0068] S3: Working out an estimated value of α(t) by numerically integrating the estimated value obtained in the step S2.

[0069] S4: Determining the transformed matrix R(t) based upon the estimated value obtained in the step S3.

[0070] S5: Working out an estimated value of the attitude at the time t based upon the transformed matrix R(t).

[0071] As described above, the system equation and the observation equation can be generated by using the modified Rodrigues parameter, and it became possible to apply the extended Kalman filter for the attitude estimation of an artificial satellite. As a result, the influence caused by drifts was reduced, and it became possible to carry out the attitude estimation with high accuracy by means of only the rate gyro. Inversely, it was not possible to generate the system equation and the observation equation by the conventional manners, and the extended Kalman filter could not be applied to the attitude estimation of an artificial satellite.

[0072] Now, explanation will be made on the theoretics.

[0073] [Theoretics]

[0074] 1. Rotation of Vectors About an Arbitrary Axis

[0075] Now, assuming that a certain vector is rotated through angle e about an arbitrary axis. Here, a unit vector in the axial direction is designated by e, and the vector after the rotation is designated by x′. In that case, the following equation becomes valid.

x′=(x·e)e+{x−(x·e)e} cosθ+(e×x)sinθ  (2.1.1a)

=(x·e)e−x+x+{x−(x·e)e}cosθ+sinθ(e×x)

=x+(1−cosθ){(x·e)e−x}+sinθ(e×x)

=x+(1−cosθ){(x·e)−(e·e)x}+sinθ(e×x)

=x+(1−cosθ)e×e×x+sinθ(e×x)

={I+sinθê+(1-cosθ)ê ² }x  (2.1.1b)

[0076] wherein I represents a unit matrix. Further, under the following conditions, $\begin{matrix} {\hat{e} = \left\lbrack {\begin{matrix} 0 \\ e_{z} \\ {- e_{y}} \end{matrix}\begin{matrix} {- e_{z}} \\ 0 \\ e_{x} \end{matrix}\begin{matrix} e_{y} \\ {- e_{x}} \\ 0 \end{matrix}} \right\rbrack} & \left( {2.1{.2}a} \right) \end{matrix}$

 êx=e×x  (2.1.2b)

[0077] the following equation becomes valid based on the formulae of double angles and half angles. $\begin{matrix} {x^{\prime} = {\left\{ {I + {2\cos \quad \frac{\theta}{2}\sin \quad \frac{\theta}{2}\hat{e}} + {2\sin \quad \frac{\theta}{2}{\hat{e} \cdot \sin}\quad \frac{\theta}{2}\hat{e}}} \right\} x}} & \left( {2.1{.3}} \right) \end{matrix}$

[0078] Here, if the quaternion q that represents the rotation of an arbitrary axial rotation θ is expressed as follows, $\begin{matrix} {q = \left( {{\cos \quad \frac{\theta}{2}},{\sin \quad \frac{\theta}{2}e}} \right)} & \left( {2.1{.4}a} \right) \end{matrix}$

 =(α,V)  (2.1.4b)

[0079] x′ is expressed as follows.

x′={I+2α{circumflex over (V)}+2{circumflex over (V)} ² }α=Rx  (2.1.5)

[0080] However, in the above equation, the following equations are valid. $\begin{matrix} {{\hat{V} = \left\lbrack {\begin{matrix} 0 \\ v_{z} \\ {- v_{y}} \end{matrix}\begin{matrix} {- v_{z}} \\ 0 \\ v_{x} \end{matrix}\begin{matrix} v_{y} \\ {- v_{x}} \\ 0 \end{matrix}} \right\rbrack}{R = \left\{ {I + {2a\hat{V}} + {2{\hat{V}}^{2}}} \right\}}} & \left( {2.1{.6}} \right) \end{matrix}$

[0081] Hence, if the direction of the axis at the time to and the transformed matrix R at the time t are known, the direction of the axis at the time t, namely the attitude, can be known.

[0082] 2. System Equation

[0083] If basis vectors in tridimensional space are c₁, C₂, C₃, and when these three vectors rotate about the axis that is expressed with a certain angular velocity vector shown in the following, $\begin{matrix} {\omega = \begin{bmatrix} \omega_{1} \\ \omega_{2} \\ \omega_{3} \end{bmatrix}} & \left( {2.2{.1}} \right) \end{matrix}$

 ω=ω₁ c ₁+ω₂ c ₂+ω₃ c ₃  (2.2.2)

[0084] the following relation comes to valid with respect to the time integrations of c₁, c₂, and c₃. $\begin{matrix} \left\{ \begin{matrix} {{\overset{.}{c}}_{1} = {\omega \times c_{1}}} \\ {{\overset{.}{c}}_{2} = {\omega \times c_{2}}} \\ {{\overset{.}{c}}_{3} = {\omega \times c_{3}}} \end{matrix} \right. & \left( {2.2{.3}} \right) \end{matrix}$

[0085] When the equation (2.2.2) is collected into one equation by using matrix expression and using 6) indicated as follows, $\begin{matrix} {\hat{\omega} = \left\lbrack {\begin{matrix} 0 \\ \omega_{3} \\ {- \omega_{2}} \end{matrix}\begin{matrix} {- \omega_{3}} \\ 0 \\ \omega_{1} \end{matrix}\begin{matrix} \omega_{2} \\ {- \omega_{1}} \\ 0 \end{matrix}} \right\rbrack} & \left( {2.2{.4}} \right) \end{matrix}$

[0086] the equation comes to an equation as follows.

{dot over (c)}=c{circumflex over (ω)}  (2.2.5)

[0087] wherein,

c=[c ₁ |c ₂ |c ₃]  (2.2.6)

c{circumflex over (ω)}=[ω×c ₁ ω×c ₂ |ω×c ₃ ]  (2.2.7)

[0088] 3. Use of Modified Rodrigues Parameter and Its First-Order Differential Equation

[0089] Modified Rodrigues parameter: α and α₀ as shown below are defined as follows. $\begin{matrix} {{a \equiv {4\tan \quad \frac{\theta}{4}e}} = \begin{bmatrix} \alpha_{x} \\ \alpha_{y} \\ \alpha_{z} \end{bmatrix}} & \left( {2.2{.31}} \right) \\ {\alpha_{0} \equiv {2 - \frac{a^{2}}{8}}} & \left( {2.2{.32}} \right) \end{matrix}$

[0090] That is, α is a tridimensional vector. e represents a directional cosine of the rotative axis, and η represents a rotation angle about the rotative axis. If the modified Rodrigues parameter defined according to the equation (2.2.31) is used, the element of the quaternion in the equation (2.1.4) can be expressed with α. If a and V expressed with a are used, the transformed matrix of the equation (2.1.5) can be expressed with a.

[0091] Further, the time history of R can be worked out by preparing the first-order differential equation of a. The first-order differential equation of a is merely three simultaneous equations.

[0092] From the equation (2.2.32), a is worked out as follows. $\begin{matrix} \begin{matrix} {a^{2} = {16 - {8\alpha_{0}}}} \\ {a = {{\cos \quad \frac{\theta}{2}} = {{2\cos^{2}\frac{\theta}{4}} - 1}}} \\ {= {\frac{2}{1 + {\tan^{2}\frac{\theta}{4}}} - 1}} \\ {= {{\frac{2}{1 + \frac{a^{2}}{16}} - 1} = {{\frac{32}{16 + a^{2}} - 1} = {\frac{32}{16 + 16 - {8\alpha_{0}}} - 1}}}} \\ {= {\frac{4}{4 - \alpha_{0}} - 1}} \end{matrix} & \left( {2.2{.33}} \right) \end{matrix}$

[0093] Hence, the following equation comes valid. $\begin{matrix} {a = \frac{\alpha_{0}}{4 - \alpha_{0}}} & \left( {2.2{.34}} \right) \end{matrix}$

[0094] Next, attention is paid to V. V is worked out according to the following equation. $\begin{matrix} {V = {{\sin \quad \frac{\theta}{2}e} = {{\frac{4\tan \quad \frac{\theta}{4}}{4 - \alpha_{0}}e} = \frac{a}{4 - \alpha_{0}}}}} & \left( {2.2{.35}} \right) \end{matrix}$

[0095] The transformed matrix R is worked out according to the following equations based on the equations (2.2.34) and (2.2.35). $\begin{matrix} \begin{matrix} {R = {I + {2a\hat{V}} + {2{\hat{V}}^{2}}}} \\ {= {I + {\frac{2\alpha_{0}}{4 - \alpha_{0}} \cdot \frac{\hat{a}}{4 - \alpha_{0}}} + \frac{2{\hat{a}}^{2}}{\left( {4 - \alpha_{0}} \right)^{2}}}} \\ {= {I + {\frac{2\alpha_{0}}{\left( {4 - \alpha_{0}} \right)^{2}}\hat{a}} + {\frac{2}{\left( {4 - \alpha_{0}} \right)^{2}}{\hat{a}}^{2}}}} \end{matrix} & \left( {2.2{.36}} \right) \end{matrix}$

[0096] If working out the first-order differential equation of a using the equations (2.2.34) and (2.2.35), the following equation comes valid. $\begin{matrix} \begin{matrix} {\overset{.}{a} = {\left( {{\frac{\alpha_{0}}{2}I} + {\frac{1}{2}\hat{a}} + {\frac{1}{8}{aa}^{T}}} \right)\omega}} \\ {= {\frac{1}{8}\left\{ {\left\lbrack {\begin{matrix} {4\alpha_{0}} \\ 0 \\ 0 \end{matrix}\begin{matrix} 0 \\ {4\alpha_{0}} \\ 0 \end{matrix}\begin{matrix} 0 \\ 0 \\ {4\alpha_{0}} \end{matrix}} \right\rbrack + \left\lbrack {\begin{matrix} 0 \\ {4\alpha_{z}} \\ {{- 4}\alpha_{2}} \end{matrix}\begin{matrix} {- \alpha_{z}} \\ 0 \\ {4\alpha_{x}} \end{matrix}\begin{matrix} \alpha_{y} \\ {- \alpha_{x}} \\ 0 \end{matrix}} \right\rbrack +} \right.}} \\ {{\begin{bmatrix} \alpha_{x} \\ \alpha_{y} \\ \alpha_{z} \end{bmatrix}\left\lbrack {\begin{matrix} \alpha_{x} \end{matrix}\begin{matrix} \alpha_{y} \end{matrix}\begin{matrix} {\left. \left. \alpha_{z} \right\rbrack \right\} \omega} \end{matrix}} \right.}} \\ {= {\frac{1}{8}\left\{ {\begin{bmatrix} {4\alpha_{0}} & {{- 4}\alpha_{z}} & {4\alpha_{y}} \\ {4\alpha_{z}} & {4\alpha_{0}} & {{- 4}\alpha_{x}} \\ {{- 4}\alpha_{y}} & {4\alpha_{x}} & {4\alpha_{0}} \end{bmatrix} + \begin{bmatrix} \alpha_{x}^{2} & {\alpha_{x}\alpha_{y}} & {\alpha_{x}\alpha_{z}} \\ {\alpha_{x}\alpha_{y}} & \alpha_{y}^{2} & {\alpha_{y}\alpha_{z}} \\ {\alpha_{x}\alpha_{z}} & {\alpha_{y}\alpha_{z}} & \alpha_{z}^{2} \end{bmatrix}} \right\} \omega}} \\ {{\therefore\overset{.}{a}} = {{\frac{1}{8}\begin{bmatrix} {{4\alpha_{0}} + \alpha_{x}^{2}} & {{{- 4}\alpha_{z}} + {\alpha_{x}\alpha_{y}}} & {{4\alpha_{y}} + {\alpha_{x}\alpha_{z}}} \\ {{4\alpha_{z}} + {\alpha_{x}\alpha_{y}}} & {{4\alpha_{0}} + \alpha_{y}^{2}} & {{{- 4}\alpha_{x}} + {\alpha_{y}\alpha_{z}}} \\ {{{- 4}\alpha_{y}} + {\alpha_{x}\alpha_{z}}} & {{4\alpha_{x}} + {\alpha_{y}\alpha_{z}}} & {{4\alpha_{0}} + \alpha_{z}^{2}} \end{bmatrix}}\omega}} \end{matrix} & \left( {2.2{.41}} \right) \end{matrix}$

[0097] [Details of Algorithm]

[0098] 4. Application to Extended Kalman Filter

[0099] In an embodiment for the present invention, the attitude estimation is carried out based on the angular velocity vector ω(t) measured from the rate gyro which is mounted to three axes being perpendicular to one another in a satellite.

[0100] More particularly, the quantity of state of the time differentiation α(t) of a modified Rodrigues parameter α(t), and the system equation and the observation equation in those which ω(t) is the quantity of observation are prepared from the equation (2.2.41), and the estimated value of α(t) is worked out with the extended Kalman filter. Then, the obtained estimated value is numerically integrated to obtain the estimated value of α(t), which is then substituted into the equation (2.2.36) to determine the transformed matrix R(t), and the estimated value of the attitude at the time t is worked out according to the equation (2.1.5).

[0101] In this case, x in the right member of the equation (2.1.5) is the initial value of the directional vector that represents an arbitrary fixed axis of an artificial satellite, and x′ in the left member becomes the direction of the fixed axis after t seconds. The norms of x′ and x are equivalent.

[0102] In the first place, the observation equation is worked out. If set as follows based on the equation (2.2.41), $\begin{matrix} {H^{- 1} = \begin{bmatrix} {{4\alpha_{0}} + \alpha_{x}^{2}} & {{{- 4}\alpha_{z}} + {\alpha_{x}\alpha_{y}}} & {{4\alpha_{y}} + {\alpha_{x}\alpha_{z}}} \\ {{4\alpha_{z}} + {\alpha_{x}\alpha_{y}}} & {{4\alpha_{0}} + \alpha_{y}^{2}} & {{{- 4}\alpha_{x}} + {\alpha_{y}\alpha_{z}}} \\ {{{- 4}\alpha_{y}} + {\alpha_{x}\alpha_{z}}} & {{4\alpha_{x}} + {\alpha_{y}\alpha_{z}}} & {{4\alpha_{0}} + \alpha_{z}^{2}} \end{bmatrix}} & \left( {2.3{.1}} \right) \end{matrix}$

[0103] the following equation becomes valid.

ω=H{dot over (α)}  (2.3.2)

[0104] By adding the observation noises to the equation (2.3.2), the observation equation in the extended Kalman filter is obtained.

[0105] Now, the system equation will be worked out. The following equation is obtained from the equation (2.2.32). $\begin{matrix} {\alpha_{0} = {{{- \frac{1}{4}}\left( {a \cdot \overset{.}{a}} \right)} = {{- \frac{1}{4}}\left( {{\alpha_{x}{\overset{.}{\alpha}}_{x}} + {\alpha_{y}{\overset{.}{\alpha}}_{y}} + {\alpha_{z}{\overset{.}{\alpha}}_{z}}} \right)}}} & \left( {2.3{.3}} \right) \end{matrix}$

[0106] When developing the equation (2.2.41), the following equation comes valid. $\begin{matrix} {\overset{.}{a} = {\frac{1}{8}\begin{bmatrix} {{\left( {{4\alpha_{0}} + \alpha_{x}^{2}} \right)\omega_{x}} + {\left( {{{- 4}\alpha_{z}} + {\alpha_{x}\alpha_{y}}} \right)\omega_{y}} + {\left( {{4\alpha_{y}} + {\alpha_{x}\alpha_{z}}} \right)\omega_{z}}} \\ {{\left( {{4\alpha_{z}} + {\alpha_{x}\alpha_{y}}} \right)\omega_{x}} + {\left( {{4\alpha_{0}} + \alpha_{y}^{2}} \right)\omega_{y}} + {\left( {{{- 4}\alpha_{x}} + {\alpha_{y}\alpha_{z}}} \right)\omega_{z}}} \\ {{\left( {{{- 4}\alpha_{y}} + {\alpha_{x}\alpha_{z}}} \right)\omega_{x}} + {\left( {{4\alpha_{x}} + {\alpha_{y}\alpha_{z}}} \right)\omega_{y}} + {\left( {{4\alpha_{0}} + \alpha_{z}^{2}} \right)\omega_{z}}} \end{bmatrix}}} & \left( {2.3{.4}} \right) \end{matrix}$

[0107] If considering that the time differentiation dω/dt of ω is meaningless and deleting it, the first-order differentiation of the equation (2.3.4) comes to as follows. $\begin{matrix} {\overset{¨}{a} = {\frac{1}{8}\begin{bmatrix} {{\left( {{\alpha_{x}{\overset{.}{\alpha}}_{x}} - {\alpha_{y}{\overset{.}{\alpha}}_{y}} - {\alpha_{z}{\overset{.}{\alpha}}_{z}}} \right)\omega_{x}} + {\left( {{{- 4}{\overset{.}{\alpha}}_{z}} + {{\overset{.}{\alpha}}_{x}\alpha_{y}} + {\alpha_{x}{\overset{.}{\alpha}}_{y}}} \right)\omega_{y}} + {\left( {{4{\overset{.}{\alpha}}_{y}} + {{\overset{.}{\alpha}}_{x}\alpha_{z}} + {\alpha_{x}{\overset{.}{\alpha}}_{z}}} \right)\omega_{z}}} \\ {{\left( {{4{\overset{.}{\alpha}}_{z}} + {{\overset{.}{\alpha}}_{x}\alpha_{y}} + {\alpha_{x}{\overset{.}{\alpha}}_{y}}} \right)\omega_{z}} + {\left( {{{- \alpha_{x}}{\overset{.}{\alpha}}_{x}} + {\alpha_{y}{\overset{.}{\alpha}}_{y}} - {\alpha_{z}{\overset{.}{\alpha}}_{z}}} \right)\omega_{y}} + {\left( {{{- 4}{\overset{.}{\alpha}}_{x}} + {{\overset{.}{\alpha}}_{y}\alpha_{z}} + {\alpha_{y}{\overset{.}{\alpha}}_{z}}} \right)\omega_{z}}} \\ {{\left( {{{- 4}{\overset{.}{\alpha}}_{y}} + {{\overset{.}{\alpha}}_{x}\alpha_{z}} + {\alpha_{x}{\overset{.}{\alpha}}_{z}}} \right)\omega_{x}} + {\left( {{4{\overset{.}{\alpha}}_{x}} + {{\overset{.}{\alpha}}_{y}\alpha_{z}} + {\alpha_{y}{\overset{.}{\alpha}}_{z}}} \right)\omega_{y}} + {\left( {{{- \alpha_{x}}{\overset{.}{\alpha}}_{x}} - {\alpha_{y}{\overset{.}{\alpha}}_{y}} + {\alpha_{z}{\overset{.}{\alpha}}_{z}}} \right)\omega_{z}}} \end{bmatrix}}} & \left( {2.3{.5}} \right) \end{matrix}$

[0108] If the right member of the above equation is f(α(t),{dot over (α)}(t),t), the following equation comes valid. $\begin{matrix} {{\overset{¨}{a}(t)} = {{f\left( {{a(t)},{\overset{.}{a}(t)},t} \right)} = \begin{bmatrix} f_{x} \\ f_{y} \\ f_{z} \end{bmatrix}}} & \left( {2.3{.6}} \right) \end{matrix}$

[0109] By adding the system noises to the equation (2.3.6), the equation becomes a system equation in the extended Kalman filter.

[0110] Since the equation (2.3.6) is a nonlinear differential equation, it is required to work out a matrix F which is obtained by partially differentiating the equation (2.3.5) by the quantity-of-state vector in order to work out the system propagation matrix. $\begin{matrix} {F = {\left\lbrack \frac{\partial f}{\partial\overset{.}{a}} \right\rbrack = \begin{bmatrix} {{\partial f_{x}}/{\partial{\overset{.}{\alpha}}_{x}}} & {{\partial f_{x}}/{\partial{\overset{.}{\alpha}}_{y}}} & {{\partial f_{x}}/{\partial{\overset{.}{\alpha}}_{z}}} \\ {{\partial f_{y}}/{\partial{\overset{.}{\alpha}}_{x}}} & {{\partial f_{y}}/{\partial{\overset{.}{\alpha}}_{y}}} & {{\partial f_{y}}/{\partial{\overset{.}{\alpha}}_{z}}} \\ {{\partial f_{z}}/{\partial{\overset{.}{\alpha}}_{x}}} & {{\partial f_{z}}/{\partial{\overset{.}{\alpha}}_{y}}} & {{\partial f_{z}}/{\partial{\overset{.}{\alpha}}_{z}}} \end{bmatrix}}} & \left( {2.3{.7}} \right) \end{matrix}$

[0111] From the equation (2.3.5), each of the elements of F is obtained as follows. $\begin{matrix} {\frac{\partial f_{x}}{\partial{\overset{.}{\alpha}}_{x}} = {\left( {{\alpha_{x}\omega_{x}} + {\alpha_{y}\omega_{y}} + {\alpha_{z}\omega_{z}}} \right)/8}} & \left( {2.3{.8}} \right) \\ {\frac{\partial f_{x}}{\partial{\overset{.}{\alpha}}_{y}} = {\left( {{{- \alpha_{y}}\omega_{x}} + {\alpha_{x}\omega_{y}} + {4\omega_{z}}} \right)/8}} & \left( {2.3{.9}} \right) \\ {\frac{\partial f_{x}}{\partial{\overset{.}{\alpha}}_{z}} = {\left( {{{- \alpha_{z}}\omega_{x}} - {4\omega_{y}} + {\alpha_{x}\omega_{z}}} \right)/8}} & \left( {2.3{.10}} \right) \\ {\frac{\partial f_{y}}{\partial{\overset{.}{\alpha}}_{x}} = {\left( {{\alpha_{y}\omega_{x}} - {\alpha_{x}\omega_{y}} - {4\omega_{z}}} \right)/8}} & \left( {2.3{.11}} \right) \\ {\frac{\partial f_{y}}{\partial{\overset{.}{\alpha}}_{y}} = {\left( {{\alpha_{x}\omega_{x}} + {\alpha_{y}\omega_{y}} + {\alpha_{z}\omega_{z}}} \right)/8}} & \left( {2.3{.12}} \right) \\ {\frac{\partial f_{y}}{\partial{\overset{.}{\alpha}}_{z}} = {\left( {{4\omega_{x}} - {\alpha_{z}\omega_{y}} + {\alpha_{y}\omega_{z}}} \right)/8}} & \left( {2.3{.13}} \right) \\ {\frac{\partial f_{z}}{\partial{\overset{.}{\alpha}}_{x}} = {\left( {{\alpha_{z}\omega_{x}} + {4\omega_{y}} - {\alpha_{x}\omega_{z}}} \right)/8}} & \left( {2.3{.14}} \right) \\ {\frac{\partial f_{z}}{\partial{\overset{.}{\alpha}}_{y}} = {\left( {{{- 4}\omega_{x}} + {\alpha_{z}\omega_{y}} - {\alpha_{y}\omega_{z}}} \right)/8}} & \left( {2.3{.15}} \right) \\ {\frac{\partial f_{z}}{\partial{\overset{.}{\alpha}}_{z}} = {\left( {{\alpha_{x}\omega_{x}} + {\alpha_{y}\omega_{y}} + {\alpha_{z}\omega_{z}}} \right)/8}} & \left( {2.3{.16}} \right) \end{matrix}$

[0112] [Simulation Result]

[0113] The result of simulation is shown in FIG. 3. FIG. 3 shows estimated errors in the direction of the apparatus body axis when the standard deviation of observation noises is equal to 3×10⁻⁵ [rad/sec]. According to FIG. 3, the errors increase in proportion to time in the initial stage and reach 2.2 [deg] at 1.2×10⁵ [sec]. However, the errors are then stabilized. According to the embodiment for the present invention, the Kalman gain has converged soon. Hence, reconstruction of information can be implemented in a good condition.

[0114] Moreover, as evident from FIG. 3, there is no accumulation of the drifts and the errors can be settled within a certain range in the embodiment for the present invention. Contrary thereto, according to the conventional techniques, the drifts accumulate and the errors have never be settled within a certain range. In this concern, the technique of the embodiment for the present invention is excellently improved.

[0115] The present invention can be modified in various ways within a scope described in the claims without being limited to the range of the embodiment described above. It is no need to say that such modifications of the present invention also fall within the scope of the present invention.

[0116] The present invention can be applied not only to an artificial satellite but also to the general fields that execute the estimation of attitude by means of a gyro, that is any apparatuses those which use an inertia measuring apparatus. The present invention can guarantee improvement in the accuracy, and its application field will be over a wide range. For example, the present invention can be utilized for a function to prevent a video camera shake and for attitude estimation of a car navigation system and the like.

[0117] Besides, in the specification for the present invention, it should be noted that the means described therein does not always represent a physical means, and it also includes the functions of the respective means those which are realized by software. Furthermore, the means may further include such a case that the function of one means is realized by two or more physical means, or the functions of two or more means are realized by one physical means.

[0118] As described above, according to the present invention, the attitude estimation with high accuracy can be realized based upon an output from only the inertia measuring apparatus. In particular, with the present invention, the drifts which have been problematic in the conventional techniques can be eliminated. 

1. An apparatus for estimating attitude using an inertia measuring apparatus comprising: a Kalman filter adapted to receive a quantity of state ω(t) from the inertia measuring apparatus, input the quantity of state into a predetermined system equation and a predetermined observation equation, and execute time update processing and observation update processing with regard to the system equation and the observation equation, a processing section adapted to generate an estimated value of a time differentiation of a modified Rodrigues parameter α(t) based upon an output of the Kalman filter, an integral processing section adapted to generate an estimated value of the modified Rodrigues parameter based upon an output of the processing section, a system propagation matrix generating section adapted to update an observation sensitivity matrix based upon an initial value being given beforehand and an output of the integral processing section and supply the updated output to the Kalman filter, a transformed matrix generating section adapted to generate a coordinate transformation matrix R based upon an output of the integral processing section, and an attitude estimation section adapted to carry out an attitude estimation based upon an output of the transformed matrix generating section.
 2. The apparatus for estimating attitude using an inertia measuring apparatus according to claim 1 characterized in that the modified Rodrigues parameter is given according to the following equations; $\begin{matrix} {{a \equiv {4\quad \tan \quad \frac{\theta}{4}e}} = \begin{bmatrix} \begin{matrix} \alpha_{x} \\ \alpha_{y} \end{matrix} \\ \alpha_{z} \end{bmatrix}} & \left( {2.2{.31}} \right) \\ {\alpha_{0} \equiv {2 - \frac{a^{2}}{8}}} & \left( {2.2{.32}} \right) \end{matrix}$

wherein e is a directional cosine of a rotative axis and θ is a rotation angle about the rotative axis.
 3. The apparatus for estimating attitude using an inertia measuring apparatus according to claim 1 characterized in that the observation equation is given by adding observation noises to an equation; ω=H{dot over (α)}  (2.3.2) when the following equation is valid. $\begin{matrix} {H^{- 1} = \begin{bmatrix} {{4\quad \alpha_{0}} + \alpha_{x}^{2}} & {{{- 4}\alpha_{z}} + {\alpha_{x}\alpha_{y}}} & {{4\quad \alpha_{y}} + {\alpha_{x}\alpha_{z}}} \\ {{4\quad \alpha_{z}} + {\alpha_{x}\alpha_{y}}} & {{4\quad \alpha_{0}} + \alpha_{y}^{2}} & {{{- 4}\alpha_{x}} + {\alpha_{y}\alpha_{z}}} \\ {{{- 4}\alpha_{y}} + {\alpha_{x}\alpha_{z}}} & {{4\quad \alpha_{x}} + {\alpha_{y}\alpha_{z}}} & {{4\quad \alpha_{0}} + \alpha_{z}^{2}} \end{bmatrix}} & \left( {2.3{.1}} \right) \end{matrix}$


4. The apparatus for estimating attitude using an inertia measuring apparatus according to claim 1 characterized in that the system equation is given by adding system noises to the following equation; $\begin{matrix} {{\overset{¨}{a}(t)} = {{f\left( {{a(t)},{\overset{.}{a}(t)},t} \right)} = \begin{bmatrix} f_{x} \\ f_{y} \\ f_{z} \end{bmatrix}}} & \left( {2.3{.6}} \right) \end{matrix}$

when the right member of the following equation; $\begin{matrix} {\overset{¨}{a} = {\frac{1}{8}\begin{bmatrix} \begin{matrix} {{\left( {{\alpha_{x}{\overset{.}{\alpha}}_{x}} - {\alpha_{y}{\overset{.}{\alpha}}_{y}} - {\alpha_{z}{\overset{.}{\alpha}}_{z}}} \right)\omega_{x}} + {\left( {{{- 4}\quad {\overset{.}{\alpha}}_{z}} + {{\overset{.}{\alpha}}_{x}\alpha_{y}} + {\alpha_{x}{\overset{.}{\alpha}}_{y}}} \right)\omega_{y}} +} \\ {\left( {{4{\overset{.}{\alpha}}_{y}} + {{\overset{.}{\alpha}}_{x}\alpha_{z}} + {\alpha_{x}{\overset{.}{\alpha}}_{z}}} \right)\omega_{z}} \end{matrix} \\ \begin{matrix} {{\left( {{4\quad {\overset{.}{\alpha}}_{z}} + {{\overset{.}{\alpha}}_{x}\alpha_{y}} + {\alpha_{x}{\overset{.}{\alpha}}_{y}}} \right)\omega_{z}} + {\left( {{{- \alpha_{x}}{\overset{.}{\alpha}}_{x}} + {\alpha_{y}{\overset{.}{\alpha}}_{y}} - {\alpha_{z}{\overset{.}{\alpha}}_{z}}} \right)\omega_{y}} +} \\ {\left( {{{- 4}\quad {\overset{.}{\alpha}}_{x}} + {{\overset{.}{\alpha}}_{y}\alpha_{z}} + {\alpha_{y}{\overset{.}{\alpha}}_{z}}} \right)\omega_{z}} \end{matrix} \\ \begin{matrix} {{\left( {{{- 4}\quad {\overset{.}{\alpha}}_{y}} + {{\overset{.}{\alpha}}_{x}\alpha_{z}} + {\alpha_{x}{\overset{.}{\alpha}}_{z}}} \right)\omega_{x}} + {\left( {{4\quad {\overset{.}{\alpha}}_{x}} + {{\overset{.}{\alpha}}_{y}\alpha_{z}} + {\alpha_{y}{\overset{.}{\alpha}}_{z}}} \right)\omega_{y}} +} \\ {\left( {{{- \alpha_{x}}{\overset{.}{\alpha}}_{x}} - {\alpha_{y}{\overset{.}{\alpha}}_{y}} - {\alpha_{z}{\overset{.}{\alpha}}_{z}}} \right)\omega_{z}} \end{matrix} \end{bmatrix}}} & \left( {2.3{.5}} \right) \end{matrix}$

is set to be f(α(t),{dot over (α)}(t),t).
 5. A method for estimating attitude using an inertia measuring apparatus comprising: first step adapted to receive signals from the inertia measuring apparatus and generate a system equation and an observation equation, in those which a quantity of state of the time differentiation of the modified Rodrigues parameter α(t) and the quantity of state ω(t) are the quantities of observation, second step adapted to work out an estimated value of the time differentiation of the parameter α(t) with an extended Kalman filter, third step adapted to numerically integrate the estimated value worked out in the second step and work out an estimated value of the parameter α(t), fourth step adapted to determined the transformed matrix R(t) based upon the estimated value worked out in the third step, and a step adapted to work out an estimated value of the attitude based upon the transformed matrix R(t).
 6. The method for estimating attitude using an inertia measuring apparatus according to claim 5 characterized in that the modified Rodrigues parameter is given according to the following equations; $\begin{matrix} {{a \equiv {4\quad \tan \quad \frac{\theta}{4}e}} = \begin{bmatrix} \begin{matrix} \alpha_{x} \\ \alpha_{y} \end{matrix} \\ \alpha_{z} \end{bmatrix}} & \left( {2.2{.31}} \right) \\ {\alpha_{0} \equiv {2 - \frac{a^{2}}{8}}} & \left( {2.2{.32}} \right) \end{matrix}$

wherein e is a directional cosine of the rotative axis and θ is an rotation angle about the rotative axis.
 7. The method for estimating attitude using an inertia measuring apparatus according to claim 5 characterized in that the observation equation is given by adding observation noises to the following equation; ω=H{dot over (α)}  (2.3.2) when the following equation is valid. $\begin{matrix} {H^{- 1} = \begin{bmatrix} {{4\quad \alpha_{0}} + \alpha_{x}^{2}} & {{{- 4}\alpha_{z}} + {\alpha_{x}\alpha_{y}}} & {{4\quad \alpha_{y}} + {\alpha_{x}\alpha_{z}}} \\ {{4\quad \alpha_{z}} + {\alpha_{x}\alpha_{y}}} & {{4\quad \alpha_{0}} + \alpha_{y}^{2}} & {{{- 4}\alpha_{x}} + {\alpha_{y}\alpha_{z}}} \\ {{{- 4}\alpha_{y}} + {\alpha_{x}\alpha_{z}}} & {{4\quad \alpha_{x}} + {\alpha_{y}\alpha_{z}}} & {{4\quad \alpha_{0}} + \alpha_{z}^{2}} \end{bmatrix}} & \left( {2.3{.1}} \right) \end{matrix}$


8. The method for estimating attitude using an inertia measuring apparatus according to claim 5 characterized in that the system equation is given by adding system noises to the following equation; $\begin{matrix} {{\overset{¨}{a}(t)} = {{f\left( {{a(t)},{\overset{.}{a}(t)},t} \right)} = \begin{bmatrix} f_{x} \\ f_{y} \\ f_{z} \end{bmatrix}}} & \left( {2.3{.6}} \right) \end{matrix}$

when the right member of the following equation; $\begin{matrix} {\overset{¨}{a} = {\frac{1}{8}\begin{bmatrix} \begin{matrix} {{\left( {{\alpha_{x}{\overset{.}{\alpha}}_{x}} - {\alpha_{y}{\overset{.}{\alpha}}_{y}} - {\alpha_{z}{\overset{.}{\alpha}}_{z}}} \right)\omega_{x}} + {\left( {{{- 4}\quad {\overset{.}{\alpha}}_{z}} + {{\overset{.}{\alpha}}_{x}\alpha_{y}} + {\alpha_{x}{\overset{.}{\alpha}}_{y}}} \right)\omega_{y}} +} \\ {\left( {{4{\overset{.}{\alpha}}_{y}} + {{\overset{.}{\alpha}}_{x}\alpha_{z}} + {\alpha_{x}{\overset{.}{\alpha}}_{z}}} \right)\omega_{z}} \end{matrix} \\ \begin{matrix} {{\left( {{4\quad {\overset{.}{\alpha}}_{z}} + {{\overset{.}{\alpha}}_{x}\alpha_{y}} + {\alpha_{x}{\overset{.}{\alpha}}_{y}}} \right)\omega_{z}} + {\left( {{{- \alpha_{x}}{\overset{.}{\alpha}}_{x}} + {\alpha_{y}{\overset{.}{\alpha}}_{y}} - {\alpha_{z}{\overset{.}{\alpha}}_{z}}} \right)\omega_{y}} +} \\ {\left( {{{- 4}\quad {\overset{.}{\alpha}}_{x}} + {{\overset{.}{\alpha}}_{y}\alpha_{z}} + {\alpha_{y}{\overset{.}{\alpha}}_{z}}} \right)\omega_{z}} \end{matrix} \\ \begin{matrix} {{\left( {{{- 4}\quad {\overset{.}{\alpha}}_{y}} + {{\overset{.}{\alpha}}_{x}\alpha_{z}} + {\alpha_{x}{\overset{.}{\alpha}}_{z}}} \right)\omega_{x}} + {\left( {{4\quad {\overset{.}{\alpha}}_{x}} + {{\overset{.}{\alpha}}_{y}\alpha_{z}} + {\alpha_{y}{\overset{.}{\alpha}}_{z}}} \right)\omega_{y}} +} \\ {\left( {{{- \alpha_{x}}{\overset{.}{\alpha}}_{x}} - {\alpha_{y}{\overset{.}{\alpha}}_{y}} - {\alpha_{z}{\overset{.}{\alpha}}_{z}}} \right)\omega_{z}} \end{matrix} \end{bmatrix}}} & \left( {2.3{.5}} \right) \end{matrix}$

is set to be f(α(t),{dot over (α)}(t),t).
 9. A program rendering a computer to implement: first step adapted to receive signal from the inertia measuring apparatus and generate a system equation and an observation equation, in those which the quantity of state of the time differentiation of the modified Rodrigues parameter α(t) and the quantity of state ω(t) are the quantities of observation, second step adapted to work out an estimated value of the time differentiation of the parameter α(t) with the extended Kalman filter, third step adapted to numerically integrate the estimated value worked out in the second step and work out an estimated value of the parameter α(t), fourth step adapted to determine the transformed matrix R(t) based upon the estimated value worked out in the third step, and a step adapted to work out an estimated value of the attitude based upon the transformed matrix R(t).
 10. The program according to claim 9 characterized in that the modified Rodrigues parameter is given according to the following equations; $\begin{matrix} {{a \equiv {4\quad \tan \quad \frac{\theta}{4}e}} = \begin{bmatrix} \begin{matrix} \alpha_{x} \\ \alpha_{y} \end{matrix} \\ \alpha_{z} \end{bmatrix}} & \left( {2.2{.31}} \right) \\ {\alpha_{0} \equiv {2 - \frac{a^{2}}{8}}} & \left( {2.2{.32}} \right) \end{matrix}$

wherein e is a directional cosine of the rotative axis and θ is a rotation angle about the rotative axis.
 11. The program according to claim 9 characterized in that the observation equation is given by adding observation noises to the following equation; ω=H{dot over (α)}  (2.3.2) when the following equation is valid. $\begin{matrix} {H^{- 1} = \begin{bmatrix} {{4\quad \alpha_{0}} + \alpha_{x}^{2}} & {{{- 4}\alpha_{z}} + {\alpha_{x}\alpha_{y}}} & {{4\quad \alpha_{y}} + {\alpha_{x}\alpha_{z}}} \\ {{4\quad \alpha_{z}} + {\alpha_{x}\alpha_{y}}} & {{4\quad \alpha_{0}} + \alpha_{y}^{2}} & {{{- 4}\alpha_{x}} + {\alpha_{y}\alpha_{z}}} \\ {{{- 4}\alpha_{y}} + {\alpha_{x}\alpha_{z}}} & {{4\quad \alpha_{x}} + {\alpha_{y}\alpha_{z}}} & {{4\quad \alpha_{0}} + \alpha_{z}^{2}} \end{bmatrix}} & \left( {2.3{.1}} \right) \end{matrix}$


12. The program according to claim 9 characterized in that the system equation is given by adding system noises to the following equation; $\begin{matrix} {{\overset{¨}{a}(t)} = {{f\left( {{a(t)},{\overset{.}{a}(t)},t} \right)} = \begin{bmatrix} f_{x} \\ f_{y} \\ f_{z} \end{bmatrix}}} & \left( {2.3{.6}} \right) \end{matrix}$

when the right member of the following equation; $\begin{matrix} {\overset{¨}{a} = {\frac{1}{8}\begin{bmatrix} {{\left( {{\alpha_{x}{\overset{.}{\alpha}}_{x}} - {\alpha_{y}{\overset{.}{\alpha}}_{y}} - {\alpha_{z}{\overset{.}{\alpha}}_{z}}} \right)\omega_{x}} + {\left( {{{- 4}{\overset{.}{\alpha}}_{z}} + {{\overset{.}{\alpha}}_{x}\alpha_{y}} + {\alpha_{x}{\overset{.}{\alpha}}_{y}}} \right)\omega_{y}} + {\left( {{4{\overset{.}{\alpha}}_{y}} + {{\overset{.}{\alpha}}_{x}\alpha_{z}} + {\alpha_{x}{\overset{.}{\alpha}}_{z}}} \right)\omega_{z}}} \\ {{\left( {{4{\overset{.}{\alpha}}_{z}} + {{\overset{.}{\alpha}}_{x}\alpha_{y}} + {\alpha_{x}{\overset{.}{\alpha}}_{y}}} \right)\omega_{z}} + {\left( {{{- \alpha_{x}}{\overset{.}{\alpha}}_{x}} + {\alpha_{y}{\overset{.}{\alpha}}_{y}} - {\alpha_{z}{\overset{.}{\alpha}}_{z}}} \right)\omega_{y}} + {\left( {{{- 4}{\overset{.}{\alpha}}_{x}} + {{\overset{.}{\alpha}}_{y}\alpha_{z}} + {\alpha_{y}{\overset{.}{\alpha}}_{z}}} \right)\omega_{z}}} \\ {{\left( {{{- 4}{\overset{.}{\alpha}}_{y}} + {{\overset{.}{\alpha}}_{x}\alpha_{z}} + {\alpha_{x}{\overset{.}{\alpha}}_{z}}} \right)\omega_{x}} + {\left( {{4{\overset{.}{\alpha}}_{x}} + {{\overset{.}{\alpha}}_{y}\alpha_{z}} + {\alpha_{y}{\overset{.}{\alpha}}_{z}}} \right)\omega_{y}} + {\left( {{{- \alpha_{x}}{\overset{.}{\alpha}}_{x}} - {\alpha_{y}{\overset{.}{\alpha}}_{y}} + {\alpha_{z}{\overset{.}{\alpha}}_{z}}} \right)\omega_{z}}} \end{bmatrix}}} & \left( {2.3{.5}} \right) \end{matrix}$

is set to be f(α(t),{dot over (α)}(t),t). 